home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / PFED-105.ZIP / CRCTEST.BAT < prev    next >
DOS Batch File  |  1995-09-12  |  4KB  |  182 lines

  1. @echo off
  2. rem  ┌─────────────────┐ 
  3. rem  │ ARCHIVE TESTING │
  4. rem  └─────────────────┘ 
  5. IF "%1"=="" GOTO ENDE
  6. IF "%2"=="" GOTO ENDE
  7. IF "%3"=="" GOTO ENDE
  8. IF NOT EXIST %2 GOTO ENDE
  9. IF EXIST crcfail.%3 DEL crcfail.%3 >NUL
  10.  
  11. rem *** ARCHIVE BRANCH ********************************************************
  12.  
  13. IF "%1" == "ZIP" GOTO ZIP
  14. IF "%1" == "ARC" GOTO ARC
  15. IF "%1" == "ARJ" GOTO ARJ
  16. IF "%1" == "LHARC" GOTO LZH
  17. IF "%1" == "PAK" GOTO PAK
  18. IF "%1" == "RAR" GOTO RAR
  19. IF "%1" == "TD0" GOTO TD0
  20. IF "%1" == "GIF" GOTO GIF
  21. GOTO ENDE
  22.  
  23. rem *** PROCEED ARCHIVE TESTING **********************************************
  24.  
  25. :ZIP
  26. pkunzip -t %2 >NUL
  27. if errorlevel 51 goto ARC_ERROR
  28. if errorlevel 50 goto DISK_FULL
  29. if errorlevel 11 goto NO_FILES
  30. if errorlevel 10 goto BAD_COMMAND
  31. if errorlevel 9 goto NO_FILES
  32. if errorlevel 8 goto NO_MEMORY
  33. if errorlevel 3 goto ARC_ERROR
  34. if errorlevel 2 goto ARC_ERROR
  35. rem *** level 1 is for warnings, have to assume CRC warning ***
  36. if errorlevel 1 goto CRC_ERROR
  37. GOTO ENDE
  38.  
  39. :ARC
  40. pkunpak -t %2 >NUL
  41. if errorlevel 1 goto ARC_ERROR
  42. GOTO ENDE
  43.  
  44. :PAK
  45. pak t %2 >NUL
  46. if errorlevel 1 goto ARC_ERROR
  47. GOTO ENDE
  48.  
  49. :ARJ
  50. arj t /y %2 >NUL
  51. if errorlevel 9 goto INVALID
  52. if errorlevel 8 goto NO_MEMORY
  53. if errorlevel 7 goto BAD_COMMAND
  54. if errorlevel 6 goto ARC_ERROR
  55. if errorlevel 5 goto DISK_FULL
  56. if errorlevel 4 goto FAIL_VERIFY
  57. if errorlevel 3 goto CRC_ERROR
  58. if errorlevel 2 goto ARC_ERROR
  59. if errorlevel 1 goto ARC_ERROR
  60. GOTO ENDE
  61.  
  62. :LZH
  63. lha t /m /n2 %2 >NUL
  64. if errorlevel == 2 goto ARC_ERROR
  65. if errorlevel == 1 goto CRC_ERROR
  66. GOTO ENDE
  67.  
  68. :RAR
  69. rar t -y %2 >NUL
  70. if errorlevel == 255 goto PROG_ERROR
  71. if errorlevel == 8 goto NO_MEMORY
  72. if errorlevel == 7 goto BAD_COMMAND
  73. if errorlevel == 6 goto PROG_ERROR
  74. if errorlevel == 5 goto DISK_FULL
  75. if errorlevel == 4 goto LOCKED
  76. if errorlevel == 3 goto CRC_ERROR
  77. if errorlevel == 2 goto ARC_ERROR
  78. if errorlevel == 1 goto WARNING
  79. goto ENDE
  80.  
  81. :TD0
  82. tdcheck %2 >NUL
  83. if errorlevel 1 goto ARC_ERROR
  84. GOTO ENDE
  85.  
  86. :GIF
  87. giftest %2 %4
  88. if errorlevel == 255 goto PROG_ERROR
  89. if errorlevel == 60 goto ENDE
  90. if errorlevel == 25 goto DUPE_CRC
  91. if errorlevel == 20 goto MIN_REZ
  92. if errorlevel == 10 goto GIF_LITED
  93. if errorlevel == 5 goto BAD_COMMAND
  94. if errorlevel == 1 goto GIF_FAIL
  95. GOTO ENDE
  96.  
  97. rem *** ARCHIVE ERRORS *******************************************************
  98.  
  99. :CRC_ERROR
  100. ECHO CRC ERRORS IN %1! %4 >CRCFAIL.%3
  101. ECHO 1 >>CRCFAIL.%3
  102. GOTO ENDE
  103.  
  104. :ARC_ERROR
  105. ECHO ERROR IN %1! %4 >CRCFAIL.%3
  106. ECHO 1 >>CRCFAIL.%3
  107. GOTO ENDE
  108.  
  109. :INVALID
  110. ECHO INVALID %1! %4 >CRCFAIL.%3
  111. ECHO 1 >>CRCFAIL.%3
  112. GOTO ENDE
  113.  
  114. :NO_FILES
  115. rem  Partial Archive?
  116. ECHO NO FILES IN %1! %4 >CRCFAIL.%3
  117. ECHO 2 >>CRCFAIL.%3
  118. GOTO ENDE
  119.  
  120. rem *** GIF ERRORS ***********************************************************
  121.  
  122. :GIF_FAIL
  123. ECHO INVALID HEADER OR PARTIAL GIF! >CRCFAIL.%3
  124. ECHO 2 >>CRCFAIL.%3
  125. GOTO ENDE
  126.  
  127. :MIN_REZ
  128. ECHO FAILED MINIMUM RESOLUTION! >CRCFAIL.%3
  129. ECHO 1 >>CRCFAIL.%3
  130. GOTO ENDE
  131.  
  132. :DUPE_CRC
  133. ECHO DUPLICATE CRC FOUND! >CRCFAIL.%3
  134. ECHO 1 >>CRCFAIL.%3
  135. GOTO ENDE
  136.  
  137. :GIF_LITED
  138. REM Tells GIF-LITE not to bother
  139. ECHO PASSED (GIF-LITE'd) >CRCFAIL.%3
  140. ECHO -1 >>CRCFAIL.%3
  141. GOTO ENDE
  142.  
  143. rem *** WARNINGS *************************************************************
  144.  
  145. :NO_MEMORY
  146. ECHO WARNING - INSUFFICIENT MEMORY!!! >CRCFAIL.%3
  147. ECHO 0 >>CRCFAIL.%3
  148. GOTO ENDE
  149.  
  150. :FAIL_VERIFY
  151. ECHO WARNING - FAILED VERIFICATION! >CRCFAIL.%3
  152. ECHO 0 >>CRCFAIL.%3
  153. GOTO ENDE
  154.  
  155. :WARNING
  156. ECHO WARNING - NON FATAL ERROR(S)! >CRCFAIL.%3
  157. ECHO 0 >>CRCFAIL.%3
  158. GOTO ENDE
  159.  
  160. :LOCKED
  161. ECHO WARNING - ARCHIVE LOCKED! >CRCFAIL.%3
  162. ECHO 0 >>CRCFAIL.%3
  163. GOTO ENDE
  164.  
  165. :BAD_COMMAND
  166. ECHO WARNING - ILLEGAL COMMAND!!! >CRCFAIL.%3
  167. ECHO 0 >>CRCFAIL.%3
  168. GOTO ENDE
  169.  
  170. :DISK_FULL
  171. ECHO WARNING - DISK FULL!!! >CRCFAIL.%3
  172. ECHO 0 >>CRCFAIL.%3
  173. GOTO ENDE
  174.  
  175. :PROG_ERROR
  176. ECHO WARNING - PROGRAM ERROR!!! >CRCFAIL.%3
  177. ECHO 0 >>CRCFAIL.%3
  178. GOTO ENDE
  179.  
  180. rem *** END OF BATCH *********************************************************
  181. :ENDE
  182.